/************************************************
 *  数码宝贝蛋
 *  
 * **********************************************/
#ifndef __DIGIMON_LIB_H
#define __DIGIMON_LIB_H

#include <stdint.h>

#define DIGI_NAMELEN 30
typedef struct digimon_base_st{
    uint16_t      digi_id;                      /* id */
    char          digi_name[DIGI_NAMELEN];      /* name */
    uint8_t       digi_type;                    /* 类型 */
    uint16_t      digi_evol[4];                 /* 进化表 */
    uint8_t       digi_evol_sution[4][2];          /* 进化条件 */
    uint8_t       bmp_num;                      /* 贴图数量 */
}digimon_base;

enum digimon_sbmp{
    BMP_DIGIMON_NORMAL0 = 0,
    BMP_DIGIMON_NORMAL1,
    BMP_DIGIMON_EAT0,
    BMP_DIGIMON_EAT1,
    BMP_DIGIMON_DABIAN0,
    BMP_DIGIMON_DABIAN1,
    BMP_DIGIMON_NO,
    BMP_DIGIMON_HAPPY,
    BMP_DIGIMON_FAIL,
    BMP_DIGIMON_ILL0,
    BMP_DIGIMON_ILL1,
    BMP_DIGIMON_ANGRY
};

enum digimon_id{
    DIGIMON_00_BUBBMON, //0 
    DIGIMON_01_MOCHIMON, //1
    DIGIMON_02_TENTOMON, 
    DIGIMON_03_GOTTSUMON,
    DIGIMON_04_OTAMAMON,
    DIGIMON_05_TORTAMON,
    DIGIMON_06_STARTMON,
    DIGIMON_07_GEROMON,
    DIGIMON_08_TAILMON,
    DIGIMON_09_ATLURRABUTERIMON,
    DIGIMON_10_JYAGAMON,
    DIGIMON_11_TRICERAMON,
    DIGIMON_12_TONOSAMAGEROMON,
    DIGIMON_13_OURUWAMON,
    DIGIMON_14_ANGEWOMON,
    DIGIMON_15_HERARLERABUTERIMON,
    DIGIMON_16_SABERLEOMON,
    DIGIMON_17_HOLYDRAMON,
    DIGIMON_18_METALETEMON,
    DIGIMON_19_TEST,
    DIGIMON_199_RABUTERIMON = 199,
    DIGIMON_999_NONE,
};



uint16_t get_bmps_start_position_index(int id);
extern digimon_base digimon_libs[];
//extern const char digimon_egg_nsp_array[][48][6];
//extern const char digimon_001_Bubbmon_array[][48][6];
extern const char digimon_001_Bubbmon_skill[36][4];
//extern const char digimon_002_Mochimon_array[][48][6];
//extern const char digimon_002_Mochimon_skill[36][4];
//extern const char digimon_born[][48][6];

#endif